package com.java.diagnostics.visualizer.properties;

import com.java.diagnostics.visualizer.data.DataSet;
import com.java.diagnostics.visualizer.data.TupleData;
import com.java.diagnostics.visualizer.data.axes.Axis;
import com.java.diagnostics.visualizer.data.axes.XAxis;
import com.java.diagnostics.visualizer.data.axes.YAxis;

public abstract interface OutputProperties
{
  public static final int UNSET = -1;
  
  public abstract IDsToDisplayProperties getTupleFieldsToDisplay();
  
  public abstract IDsToDisplayProperties getUnstructuredFieldsToDisplay();
  
  public abstract IDsToDisplayProperties getStructuredFieldsToDisplay();
  
  public abstract Object getDisplayerProperties(String paramString);
  
  public abstract void setDisplayerProperties(String paramString, Object paramObject);
  
  public abstract void setMinimumX(String paramString, Double paramDouble);
  
  public abstract void setMaximumX(String paramString, Double paramDouble);
  
  public abstract void setMinimumY(String paramString, Double paramDouble);
  
  public abstract void setMaximumY(String paramString, Double paramDouble);
  
  public abstract void clearMinimumX();
  
  public abstract void clearMaximumX();
  
  public abstract void clearMinimumY();
  
  public abstract void clearMaximumY();
  
  public abstract Double getMinimumX(String paramString);
  
  public abstract Double getMaximumX(String paramString);
  
  public abstract Double getMinimumY(String paramString);
  
  public abstract Double getMaximumY(String paramString);
  
  public abstract void disableNotifications();
  
  public abstract void enableNotifications();
  
  public abstract void notifyListeners();
  
  public abstract void addListener(OutputPropertiesListener paramOutputPropertiesListener);
  
  public abstract void removeListener(OutputPropertiesListener paramOutputPropertiesListener);
  
  public abstract XAxis getXAxis();
  
  public abstract void setXAxis(XAxis paramXAxis);
  
  public abstract YAxis getYAxis(String paramString);
  
  public abstract void setYAxis(String paramString, YAxis paramYAxis);
  
  public abstract void setZoomLimits(double paramDouble1, double paramDouble2, double paramDouble3, double paramDouble4);
  
  public abstract double getXZoomStart();
  
  public abstract double getXZoomEnd();
  
  public abstract double getYZoomStart();
  
  public abstract double getYZoomEnd();
  
  public abstract void notifyZoomListeners();
  
  public abstract void addZoomListener(ZoomListener paramZoomListener);
  
  public abstract void removeZoomListener(ZoomListener paramZoomListener);
  
  public abstract void setSaveHeight(Integer paramInteger);
  
  public abstract void setSaveWidth(Integer paramInteger);
  
  public abstract Integer getSaveHeight();
  
  public abstract Integer getSaveWidth();
  
  public abstract void setUnits(Axis paramAxis, String paramString);
  
  public abstract void setDefaultUnits(Axis paramAxis, String paramString);
  
  public abstract String getUnits(Axis paramAxis);
  
  public abstract String getYUnits(TupleData paramTupleData);
  
  public abstract String getXUnits(TupleData paramTupleData);
  
  public abstract DataSet getDataSet();
}


